/* 
 * Archivo JS de la vista para el módulo de deportes
 */

// funcion para comprobar si usuario ya esta el una lista
function existeLista(objeto,elemento) {
    devuelve = false;
    $(objeto).each(function(index) {
        if ($(this).text()==elemento){
            devuelve = true;
        }
    });
    return devuelve;

}

function listadoAdjuntos(){
    $(".classDeporte").each(function(i,obj){
        objActual=$(obj).find('.listadoAdjunto');
        $(objActual).load(
            'direc.php',{
                'url':'controller/modules/deportes/listarAdjuntosDeportes.php',
                'deporteId':$(obj).children('input#IdeporteId').val(),
                'content':'false'
            });
    });
}

$(document).ready(function()
{
    // construcción de div con estudiantes inscritos
    $(".classDeporte").each(function(i,obj){
        objActual=$(obj).find('ol');
        $(objActual).load(
            'direc.php',{
                'url':'controller/modules/deportes/getDeportistasDeporte.php',
                'deporteId':$(obj).children('input#IdeporteId').val(),
                'content':'false'
            });
    });
    listadoAdjuntos();
    // se asigna propiedad de desplazamiento
    $("#divDeportistaDrag").draggable({
        helper: "clone"
    });
    $(".classDeporte").droppable({
        activeClass: "ui-state-default",
        hoverClass: "ui-state-hover",
        accept: ":not(.ui-sortable-helper)",
        drop: function( event, ui ) {
            if($(ui.draggable).children('input#IcodDeportista').val()){
                if (!existeLista($(this).children('li'),ui.draggable.text())){
                    $( this ).find( ".placeholder" ).remove();
                    campoInput="<input id='IcodDeportista'  type='hidden' value='" + $(ui.draggable).children('input#IcodDeportista').val() +"'>";
                    objActual=$(this).find('ol');
                    //enviamos la consulta para guardar la asignación
                    $.ajax({
                        url:'direc.php',
                        data:{
                            'url':'controller/modules/deportes/setDeportistaDeporte.php',
                            'deporteId':$( this ).children('input#IdeporteId').val(),
                            'deportistaId':$(ui.draggable).children('input#IcodDeportista').val(),
                            'content':'false'
                        },
                        success: function(o,result) {
                            if(result=='success'){
                                if(o=='1'){
                                    $( "<li class='listaDeportista'></li>" ).html( ui.draggable.text()+campoInput).appendTo( objActual );
                                }
                                else{
                                    $('#divRespuestaDeportes').html(o);
                                    $('#divRespuestaDeportes').dialog();
                                }
                            }

                        }
                    });
                }
            }
        }
    }).sortable({
        items: "li:not(.placeholder)",
        sort: function() {
            // gets added unintentionally by droppable interacting with sortable
            // using connectWithSortable fixes this, but doesn't allow you to customize active/hoverClass options
            $( this ).removeClass( "ui-state-default" );
        }
    });
    function log( message ) {
        $( "#divDeportistaDrag" ).html( message );
    }

    $( "#deportistas" ).autocomplete({
        source: "direc.php?url=controller/modules/deportes/mostarDeportistas.php&content=false",
        minLength: 2,
        select: function( event, ui ) {
            log( ui.item ? "<input type='hidden' id='IcodDeportista' value='"+ui.item.id+"'>" + ui.item.label : "Sin Seleccionar" + this.value );
        }
    });

    $('#divEliminarDeportistaDeporte').droppable({
        activeClass: "ui-state-default",
        hoverClass: "ui-state-error",
        accept:'.listaDeportista',
        drop: function( event, ui ) {
            //se solicita confirmación
            $('#divMensaje').html('¿Esta séguro de retirar al deportista?');
            $('#divMensaje').dialog({
                modal:true,
                buttons: {
                    "Confirmar": function() {
                        //envio ajax para la eliminación del permiso parametros materia, docente.
                        $.ajax({
                            url:'direc.php',
                            data:{
                                'url':'controller/modules/deportes/delDeportistaDeporte.php',
                                'deporteId':$(ui.draggable).parent().parent().children('input#IdeporteId').val(),
                                'deportistaId':$(ui.draggable).children('input#IcodDeportista').val(),
                                'content':'false'
                            },
                            success: function(o,result) {
                                if(result=='success'){
                                    if(o=='1'){
                                        $(ui.draggable).remove();
                                    }
                                    else{
                                        $('#divRespuestaDeportes').html(o);
                                        $('#divRespuestaDeportes').dialog();
                                    }
                                }

                            }
                        });
                        $(this).dialog("close");
                    },
                    "Cancelar": function() {
                        $(this).dialog("close");
                    }
                }
            });

        }
    });
    //configuracion para enviar formulario por ajax
    $('.formAdjuntar').ajaxForm({
        data: {
            'url':'controller/modules/deportes/adjuntarArchivoDeporte.php',
            'content':'false'
        },
        complete: function(xhr) {
            //si guarda el registro se actualiza el listado de  estudiantes
            //
            if(xhr.responseText=='1'){
                $('#divRespuestaDeportes').html('¡Se ha enviado el archivo correctamente!');
                // se carga el archivo que se acaba de importar
                listadoAdjuntos();
            }
            else{
                $('#divRespuestaDeportes').html(xhr.responseText);
            }
            $('#divRespuestaDeportes').dialog(
            {
                modal:true,
                buttons: {
                    "Aceptar": function() {
                        $(this).dialog("close");
                    }
                }
            }
            );
        //status.html(xhr.responseText);
        }
    });

});




